让 hexo 博客在后台跑起来

让 hexo 博客在后台跑起来

  前几天利用 hexo 搭建了一个博客,于是很高兴地用 $ hexo server 在我的 Linux 服务器上跑了起来。
  但是发现,只要关闭了进程,博客也就跟着关闭了。想着,这样的博客给谁看啊,总不能我本地一直开着进程吧。
  于是我开始搜索相关 hexo 后台运行的方法,貌似很多人也有同样的问题,官方给出的方法是$ hexo s &,试了一下进程还是莫名其妙中断了。于是乎看到一篇文章说使用 forever 可以解决,这个给了我启发,那么就用 pm2 运行我的博客不就行了。

img

那么开始操作:

安装pm2

1
npm install -g pm2

写一个执行脚本

学习一下 Node.js 官方文档的 child_process.exec(command[, options][, callback]) 部分
参考官方文档
在博客根目录下创建一个文件 run.js

1
2
3
4
5
6
7
8
9
10
//run.js
const { exec } = require('child_process')
exec('hexo server',(error, stdout, stderr) => {
if(error){
console.log(`exec error: ${error}`)
return
}
console.log(`stdout: ${stdout}`);
console.log(`stderr: ${stderr}`);
})

运行脚本

进入博客根目录

1
pm2 start run.js
🍭支持一根棒棒糖!